生活中有很多數字,報表上我們總也愛用數字來衡量一個人的貢獻,MS Offce工具便利,讓這類數字很容易就以各式各樣的統計圖呈現。但有時候,其實只要簡單呈現幾個達成的級別而已,例如:這次A業務的業績達到五顆星等等。
這類需求通常會以幾種條件限制,像是1百萬以下1顆星,2百萬以下2顆星,5百萬以上5顆星。
要處理這種的方法,必須設定區間的判斷,通常搭配decode,sign,Chr,甚至無條件去尾等等函數。
這題是等級數轉換,基本是把數字轉成對應的符號數量即可。複雜一點的可能就會是不固定區區間的那種。
大致如下:
1.先轉換出需要的星星數,去尾
trunc(s_amount/1000000)
2.把數字轉換成數量的符號
select saleman, rpad('', trunc(s_amount/1000000), '☆')
from [銷售業績];
在家沒有工作環境, 寫SQL還沒得測試,.....先這樣吧...